The 20 Games Challenge
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Super Mario Bros.

Super Mario Bros is one of the most iconic and well-known games of all time. Nintendo released the game on the NES in 1985. The game and the console helped revitalize the US video game market after the crash of 1983. There are now more than 20 games in the Super Mario series.

Fun fact: Super Mario Bros has been optimized by speedrunners. If you spend multiple years practicing, then you might be able to beat the game in only 4 minutes and 54 seconds! Re-creating the game is probably less work…



  • Create a 2D character controller. Mario should be able to walk, run, and jump.
  • Create a single level. You can make world 1-1, or design your own level. The level should be made up of textured tiles. There will also be some special elements:
    • Add “question mark” boxes. These will contain coins or power ups.
    • Add warp pipes. Mario should be able to enter these by pressing the “down” button. He will exit a pipe somewhere else on the map.
    • At the end of the level should be a castle and a flagpole. Touching the flagpole will end the level.
  • Add enemies to the level. Goombas will walk in a straight line and turn around when they hit something. Jumping on a Goomba will squash it. Koopas will retreat into their shell when stomped on. The shell will move when hit again.
  • Add power ups. A mushroom will cause Mario to increase in size. Feel free to add stars or fire flowers as well.
  • Make your own sprites, sound effects, and music. Pay special attention to the artwork for repeating tiles, pattern should look good when repeated.
  • Add a life counter and level timer. Mario will die if the timer reaches zero before he finds the level exit.

Stretch goal:

  • Make all of the background art for the level.
  • Make an animated sequence at the end of the level. Touching the flagpole should cause the flag to drop before Mario walks into the castle, exiting the level.
  • Make some more levels. Re-make an entire world, or design your own levels.

You’re not the first person to attempt this challenge! Check out some completed games below!

Don’t forget to share your progress on the community discord!

I’ll periodically update this section with community submissions. Feel free to message me if you want yours to be included. You can also open a pull request yourself to add your game, or someone else’s.